Software Engineering for Self-Adaptive Systems: Research Challenges in the Provision of Assurances
نویسندگان
چکیده
The important concern for modern software systems is to become more cost-effective, while being versatile, flexible, resilient, dependable, energy-efficient, customisable, configurable, and self-optimising when reacting to run-time changes that may occur within the system itself, its environment, or requirements. One of the most promising approaches to achieving such properties is to equip software systems with self-managing capabilities using self-adaptation mechanisms. Despite recent advances in this area, one key aspect of self-adaptive systems that remains to be tackled in depth is the provision of assurances, i.e., the collection, analysis, and synthesis of evidence that the system satisfies its stated functional and non-functional requirements during its operation in the presence of self-adaptation. The provision of assurances for selfadaptive systems is challenging since run-time changes introduce a high degree of uncertainty. This paper on research challenges complements previous roadmap papers on software engineering for self-adaptive systems covering a different set of topics, which are related to assurances, namely, perpetual assurances, composition and decomposition of assurances, and assurances obtained from control theory. This research challenges paper is one of the many results of the Dagstuhl Seminar 13511 on Software Engineering for Self-Adaptive Systems: Assurances, which took place in December 2013.
منابع مشابه
Software Engineering for Self-Adaptive Systems: Assurances
The important concern for modern software systems is to become more cost-effective, while being versatile, flexible, resilient, dependable, energy-efficient, customisable, configurable and self-optimising when reacting to run-time changes that may occur within the system itself, its environment or requirements. One of the most promising approaches to achieving such properties is to equip softwa...
متن کاملChallenges in Composing and Decomposing Assurances for Self-Adaptive Systems
Self-adaptive software systems adapt to changes in the environment, in the system itself, in their requirements, or in their business objectives. Typically, these systems attempt to maintain system goals at run time and often provide assurance that they will meet their goals under dynamic and uncertain circumstances. While significant research has focused on ways to engineer selfadaptive capabi...
متن کاملChallenges in Engineering Dependable Self-Adaptive System
To provide some levels of dependency in software systems, self-adaptive systems have been proposed as a principled approach to engineering software systems to adapt systems to meet requirements even in the face of changes and uncertainty in the environment. But how can we show that changing a system at run time will make systems more dependable? In this keynote, I will outline a set of challeng...
متن کاملPerpetual Assurances for Self-Adaptive Systems
Providing assurances for self-adaptive systems is challenging. A primary underlying problem is uncertainty that may stem from a variety of different sources, ranging from incomplete knowledge to sensor noise and uncertain behavior of humans in the loop. Providing assurances that the self-adaptive system complies with its requirements calls for an enduring process spanning the whole lifetime of ...
متن کاملDeveloping Self-adaptive Melody Search Algorithm for Optimal Operation of Multi-reservoir Systems
Operation of multi-reservoir systems is known as complicated and often large-scale optimization problems. The problems, because of broad search space, nonlinear relationships, correlation of several variables, as well as problem uncertainty, are difficult requiring powerful algorithms with specific capabilities to be solved. In the present study a Self-adaptive version of Melody Search algorith...
متن کامل